Programming Rework in Software Processes

نویسندگان

  • Aaron G. Cass
  • Leon J. Osterweil
چکیده

Our long-term research in process programming is based on the hypothesis that software processes can and should be captured accurately and formally, using executable formalisms to support execution, analysis, and understanding. Many process languages have been developed over the years for modeling processes formally. In this paper, we argue that for automated support, we need not a process modeling language, but a process programming language – a language with semantics sufficient to support the execution of process definitions. Specifically, we argue that invocation semantics are required for accurately describing real-world development processes. We use the common phenomenon of rework as an example of a process feature which requires invocation semantics for adequate specification. In this paper, we argue that rework can only be accurately described using invocation semantics borrowed from general purpose programming languages. We argue this in the general case and demonstrate a specific case via an example using Little-JIL, our hierarchical process programming language.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

A Mathematical Programming Model and Genetic Algorithm for a Multi-Product Single Machine Scheduling Problem with Rework Processes

In this paper, a multi-product single machine scheduling problem with the possibility of producing defected jobs, is considered. We concern rework in the scheduling environment and propose a mixed-integer programming (MIP) model for the problem.  Based on the philosophy of just-in-time production, minimization of the sum of earliness and tardiness costs is taken into account as the objective fu...

متن کامل

Formalizing Rework in Software Processes

This paper indicates how effective software-process programming languages can lead to improved understandings of critical software processes, as well as improved process performance. In this paper we study the commonly mentioned, but seldom defined, rework process. We note that rework is generally understood to be a major software development activity, but note that it is poorly defined and und...

متن کامل

Measuring the Cost of Software Quality of a Large Software Project at Bombardier Transportation: A Case Study

In a competitive world, it is important to measure and improve the performance of software engineering processes and imperative to identify and eliminate rework that could have been avoided. The cost of software quality is one measure of the performance of software processes. It comprises the total cost associated with the prevention, appraisal, and correction of the anomalies in a product. A m...

متن کامل

A Pattern for Modeling Rework in Software Development Processes

It is usual for work completed at one point in a software development process to be revisited, or reworked, at a later point. Such rework is informally understood, but if we hope to support reasoning about, and partial automation of, software development processes, rework be more formally understood. In our experience in designing formalized processes in software development and other domains, ...

متن کامل

Software Defect Reduction Top 10 List

“Avoidable rework” is effort spent fixing difficulties with the software that could have been avoided or discovered earlier and less expensively. This definition implies that there is such thing as “unavoidable rework”. Reducing “avoidable rework” is a major source of software productivity improvement and most effort savings from improving software processes, architectures and risk management a...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2002